package code04_循环结构;

import java.util.Scanner;

/**
 * @author 黄衡熙
 * @version 1.0
 * @date 2025年07月17日9:43
 */
public class Test14_打印等腰三角形 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入等腰三角形的行数:");
        int rows = sc.nextInt();

        // 外层循环控制打印的行数
        for (int i = 1; i <= rows; i++) {
            // 内层循环控制每一行的内容
//            总行数:rows,假设此时共五行
//            行数	空格数		星号数
//            1		4=5-1			1=2*1-1
//            2		3=5-2			3=2*2-1
//            3		2=5-3			5=2*3-1
//            4		1=5-4			7=2*4-1
//            5		0=5-5			9=2*5-1
//            i	  	rows-i			2*i-1
            // 内层循环需要打印两种内容:空格与星号
            // 先打印空格
            // 每循环一次,打印一个空格,因此根据上述规律需要循环rows-i次
            for (int j = 1; j <= rows - i; j++) {
                System.out.print("  ");
            }

            // 后打印星号
            // 每循环一次,打印一个星号,因此根据上述规律需要循环2*i-1次
            for (int j = 1; j <= 2 * i - 1; j++) {
                System.out.print("* ");
            }
            // 内层循环打印完毕之后换行
            System.out.println();
        }
    }
}